Faster shortest paths in dense distance graphs, with applications
نویسندگان
چکیده
We show how to combine two techniques for efficiently computing shortest paths in directed planar graphs. The first is the linear-time shortest-path algorithm of Henzinger, Klein, Subramanian, and Rao [STOC’94]. The second is Fakcharoenphol and Rao’s algorithm [FOCS’01] for emulating Dijkstra’s algorithm on the dense distance graph (DDG). A DDG is defined for a decomposition of a planar graph G into regions of at most r vertices each, for some parameter r < n. The vertex set of the DDG is the set of Θ(nr−1/2) vertices of G that belong to more than one region (boundary vertices). The DDG has Θ(n) arcs, such that distances in the DDG are equal to the distances in G. Fakcharoenphol and Rao’s implementation of Dijkstra’s algorithm on the DDG (nicknamed FR-Dijkstra) runs in O(n log(n)r−1/2 log r) time, and is a key component in many state-of-the-art planar graph algorithms for shortest paths, minimum cuts, and maximum flows. By combining these two techniques we remove the log n dependency in the running time of the shortest-path algorithm at the price of an additional log r factor, making it O(nr−1/2 log r). This work is part of a research agenda that aims to develop new techniques that would lead to faster, possibly linear-time, algorithms for problems in planar graphs such as minimum-cut, maximum-flow, and shortest paths with negative arc lengths. As immediate applications, we show how to compute maximum flow in directed weighted planar graphs in O(n log p) time, and minimum st-cut in undirected weighted planar graphs in O(n log log p) time, where p is the minimum number of edges on any path from the source to the sink. We also show how to compute any part of the DDG that corresponds to a region with r vertices and k boundary vertices in O(r log k) time, which is faster than has been previously known for small values of k. ∗The research was supported in part by Israel Science Foundation grants 794/13 and 592/17.
منابع مشابه
Improved Bounds for Shortest Paths in Dense Distance Graphs
We study the problem of computing shortest paths in so-called dense distance graphs. Every planar graph G on n vertices can be partitioned into a set of O(n/r) edge-disjoint regions (called an r-division) with O(r) vertices each, such that each region has O( √ r) vertices (called boundary vertices) in common with other regions. A dense distance graph of a region is a complete graph containing a...
متن کاملEfficient Shortest Paths on Massive Social Graphs (Invited Paper)
Analysis of large networks is a critical component of many of today’s application environments, including online social networks, protein interactions in biological networks, and Internet traffic analysis. The arrival of massive network graphs with hundreds of millions of nodes, e.g. social graphs, presents a unique challenge to graph analysis applications. Most of these applications rely on co...
متن کاملFast algorithms for (max, min)-matrix multiplication and bottleneck shortest paths
Given a directed graph with a capacity on each edge, the all-pairs bottleneck paths (APBP) problem is to determine, for all vertices s and t, the maximum flow that can be routed from s to t. For dense graphs this problem is equivalent to that of computing the (max,min)transitive closure of a real-valued matrix. In this paper, we give a (max,min)-matrix multiplication algorithm running in time O...
متن کاملFaster Approximate Distance Queries and Compact Routing in Sparse Graphs
A distance oracle is a compact representation of the shortest distance matrix of a graph. It can be queried to retrieve approximate distances and corresponding paths between any pair of vertices. A lower bound, due to Thorup and Zwick, shows that a distance oracle that returns paths of worst-case stretch (2k − 1) must require space Ω(n) for graphs over n nodes. The hard cases that enforce this ...
متن کاملSolving Application Oriented Graph Theoretical Problems with DNA Computing
Important features of networks, e.g., length of shortest paths, centrality, are defined in a graph theoretical way. Bipartite graphs are frequently applied, not only in computer science (e.g. PetriNets), but in other sciences as well. They are used to represent various problems, for example, in medicine or in economy. The relations between customers and products can be represented by bipartite ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Theor. Comput. Sci.
دوره 711 شماره
صفحات -
تاریخ انتشار 2018